Local management console for storage devices

ABSTRACT

A local management console includes: a communication interface to connect to a baseboard management controller (BMC) of a chassis in a data storage rack; and a display that displays information associated with one or more data storage devices included in the chassis. The information includes at least one of configuration, control, debugging, or status data associated with at least one of the one or more storage devices. The local management console connects to the BMC through the communication interface, and responsive to receiving a first interaction associated with the display, performs at least one of a configuration, control, debugging, or status acquisition operation on at least one of the one or more data storage devices.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This application claims the benefits of and priority to U.S. ProvisionalPatent Application Ser. No. 62/608,383 filed Dec. 20, 2017, thedisclosure of which is incorporated herein by reference in its entirety.

TECHNICAL FIELD

The present disclosure relates generally to a data storage systemincluding data storage devices, more particularly, to a system andmethod for providing a local management console for managing datastorage devices.

BACKGROUND

Hyperscale computing and new generations of cloud services andnetworking technologies are redefining data storage and managementschemes in a datacenter. As the underlying technologies advance, theexisting hardware and infrastructure of the datacenter needs to bereconfigured or scaled, or new infrastructure needs to be built toaccommodate the increasing demands for compute, memory, networking, andstorage.

Solid-state drives (SSDs) are rapidly becoming main storage elements ofmodern datacenter infrastructure quickly replacing traditional storagedevices such as hard disk drives (HDDs). SSDs offer low latency, highdata read/write throughput, and reliable persistent storage of userdata. Non-volatile memory express (NVMe) over fabrics (NVMe-oF) is anemerging technology that allows hundreds and thousands of SSDs to beconnected over a fabric network such as Ethernet, Fibre Channel, andInfiniband.

The NVMe-oF protocol enables remote direct-attached storage (rDAS)allowing a large number of NVMe SSDs to be connected to a remote hostover the established fabric network. The NVMe-oF protocol may use theremote direct memory access (RDMA) to provide a reliable transportservice to carry NVMe commands, data, and responses over the network.iWARP, RoCE v1, and RoCE v2 are some examples of the transport protocolsthat provide an RDMA service. While RDMA has been the primary motivationof enabling NVMe-oF, Fibre Channel over Ethernet (FC-oE) andTransmission Control Protocol (TCP) are/have been also enabled as newertransport protocols for the same purpose.

A traditional storage server includes an x86-based (or similar) centralprocessing unit (CPU) that runs an operating system (OS) to provideinterfaces to coupled hardware devices. For example, a server loadedwith a standardized operating system (e.g., LINUX) has one or more inputports for providing interfaces to various input devices such as akeyboard and a mouse and a display port to connect a local displaydevice such as a video graphics array (VGA) port, a display port, or ahigh-definition multimedia interface (HDMI) port. In addition, theserver can be connected to a remote display device through a remotesession to provide an interface for a service administrator to upkeepthe connected hardware devices. For a local user, the interface providesconfigurability, usability, debug, and status of the locally connectedhardware devices.

SSDs compatible with the NVMe-oF standard, eSSDs (Ethernet SSD) inshort, can remove the requirement of a costly CPU by fusing networkingwith storage and supporting a network storage protocol. The protocoltranslation is handled as much in a hardware-based mechanism such as afield-programmable gate array (FPGA) that provides performance and speedwhile removing bottlenecks that are inherent in the conventionalx86-based CPU-heavy architecture.

A storage rack in a datacenter includes a plurality of enclosuresreferred to as chassis, and each chassis can include a plurality ofstorage devices such as eSSDs. Within an eSSD chassis, a low-costbaseboard management controller (BMC) directly manages the connectedeSSDs to provide a remote interface to a system administrator toconfigure, control and report status to a system administrator.Typically, the eSSD chassis does not have a display port for providing adisplay interface of the eSSDs in a specific eSSD chassis.

SUMMARY

According to one embodiment, a local management console includes: acommunication interface to connect to a baseboard management controller(BMC) of a chassis in a data storage rack; and a display that displaysinformation associated with one or more data storage devices in thechassis. The information includes at least one of configuration,control, debugging, or status data associated with at least one of theone or more storage devices. The local management console connects tothe BMC through the communication interface, and responsive to receivinga first interaction associated with the display, performs at least oneof a configuration, control, debugging, or status acquisition operationon at least one of the one or more data storage devices.

According to another embodiment, a data storage system includes: a hostcomputer including an application; a data storage rack including one ormore chassis, wherein each chassis includes an Ethernet switch, abaseboard management controller (BMC), and one or more data storagedevices; and one or more local management consoles. each of the localmanagement consoles includes: a communication interface to connect to abaseboard management controller (BMC) of a chassis in a data storagerack; and a display that displays information associated with one ormore data storage devices included in the chassis, the informationcomprising at least one of configuration, control, debugging, or statusdata associated with at least one of the one or more storage devices.Each of the local management consoles connects to the BMC of eachchassis through the communication interface, and responsive to receivinga first interaction associated with the display, performs at least oneof a configuration, control, debugging, or status acquisition operationon at least one of the one or more data storage devices.

The above and other preferred features, including various novel detailsof implementation and combination of events, will now be moreparticularly described with reference to the accompanying figures andpointed out in the claims. It will be understood that the particularsystems and methods described herein are shown by way of illustrationonly and not as limitations. As will be understood by those skilled inthe art, the principles and features described herein may be employed invarious and numerous embodiments without departing from the scope of thepresent disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are included as part of the presentspecification, illustrate the presently preferred embodiment andtogether with the general description given above and the detaileddescription of the preferred embodiment given below serve to explain andteach the principles described herein.

FIG. 1 shows a block diagram of an example data storage system,according to one embodiment;

FIG. 2 shows a block diagram of an example data storage system,according to another embodiment;

FIG. 3 shows a block diagram of an example data storage system in adatacenter including a local management console (LMC), according to oneembodiment;

FIGS. 4A through 4D show example display images of an LMC, according toone embodiment; and

FIGS. 5A through 5D show exemplary configurations of the LMC, accordingto various embodiments.

The figures are not necessarily drawn to scale and elements of similarstructures or functions are generally represented by like referencenumerals for illustrative purposes throughout the figures. The figuresare only intended to facilitate the description of the variousembodiments described herein. The figures do not describe every aspectof the teachings disclosed herein and do not limit the scope of theclaims.

DETAILED DESCRIPTION

Each of the features and teachings disclosed herein can be utilizedseparately or in conjunction with other features and teachings toprovide a local management console for managing data storage devices.Representative examples utilizing many of these additional features andteachings, both separately and in combination, are described in furtherdetail with reference to the attached figures. This detailed descriptionis merely intended to teach a person of skill in the art further detailsfor practicing aspects of the present teachings and is not intended tolimit the scope of the claims. Therefore, combinations of featuresdisclosed above in the detailed description may not be necessary topractice the teachings in the broadest sense, and are instead taughtmerely to describe particularly representative examples of the presentteachings.

In the description below, for purposes of explanation only, specificnomenclature is set forth to provide a thorough understanding of thepresent disclosure. However, it will be apparent to one skilled in theart that these specific details are not required to practice theteachings of the present disclosure.

Some portions of the detailed descriptions herein are presented in termsof algorithms and symbolic representations of operations on data bitswithin a computer memory. These algorithmic descriptions andrepresentations are used by those skilled in the data processing arts toeffectively convey the substance of their work to others skilled in theart. An algorithm is here, and generally, conceived to be aself-consistent sequence of steps leading to a desired result. The stepsare those requiring physical manipulations of physical quantities.Usually, though not necessarily, these quantities take the form ofelectrical or magnetic signals capable of being stored, transferred,combined, compared, and otherwise manipulated. It has proven convenientat times, principally for reasons of common usage, to refer to thesesignals as bits, values, elements, symbols, characters, terms, numbers,or the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the below discussion, itis appreciated that throughout the description, discussions utilizingterms such as “processing,” “computing,” “calculating,” “determining,”“displaying,” or the like, refer to the action and processes of acomputer system, or similar electronic computing device, thatmanipulates and transforms data represented as physical (electronic)quantities within the computer system's registers and memories intoother data similarly represented as physical quantities within thecomputer system memories or registers or other such information storage,transmission or display devices.

Moreover, the various features of the representative examples and thedependent claims may be combined in ways that are not specifically andexplicitly enumerated in order to provide additional useful embodimentsof the present teachings. It is also expressly noted that all valueranges or indications of groups of entities disclose every possibleintermediate value or intermediate entity for the purpose of an originaldisclosure, as well as for the purpose of restricting the claimedsubject matter. It is also expressly noted that the dimensions and theshapes of the components shown in the figures are designed to help tounderstand how the present teachings are practiced, but not intended tolimit the dimensions and the shapes shown in the examples.

The present disclosure a system and method for providing a localmanagement console (LMC) for a chassis that includes a plurality of datastorage devices. An example of the data storage device is an NVMe-oFcompatible solid-state drive (SSD), herein referred to as an eSSD, andthe chassis including plurality of eSSDs is herein also referred to asan Ethernet chassis or an eSSD chassis. The LMC can provide varioususages that are currently unavailable with a conventional eSSD chassis.

The LMC can connect to one or more eSSD chassis wiredly and wirelessly.A local administrator may physically carry the LMC in a datacenter, orthe LMC may be placed at a strategic location within the datacenter. TheLMC can collect data from each of the connected eSSD chassis and act onthe data that collected from the eSSD chassis. The local administratorcan use the LMC to monitor and query a status, and configure parametersof the eSSDs in the eSSD chassis and can even override, if necessary,and if authorized, any eSSD parameters configured by a remote systemadministrator (herein also referred to as a super administrator). TheLMC can provide a granularity of managing eSSDs in the eSSD chassis, orcollectively configuring and managing eSSDs and eSSD chassis using thecollected data.

Each eSSD chassis may include a baseboard management controller (BMC).According to one embodiment, the LMC can use an NVMe managementinterface (NVMe-MI) for communicating with the BMC of each eSSD chassis.The LMC can persist various statistical data including performancerelated data of the eSSDs over a period of time for offline review anddiagnostics for vendor-specific and generic datacenter details. Based onthe collected data, the local administrator in possession of the LMC cansend instructions to the BMC of the eSSD chassis to perform variousconfiguration and monitoring actions for the eSSD chassis and the eSSDsin the eSSD chassis.

According to one embodiment, the LMC can securely communicate with theBMC. The LMC can not only display the collected data from eSSDs in theeSSD chassis but also securely process and provide statistical data ofthe eSSDs in the eSSD chassis. The LMC can show data specific to an eSSDchassis and a rack-level or datacenter-level statistical data combiningdata of multiple eSSD chassis to provide information of a rack, ormultiple racks across the datacenter. The remote administrator canoffload certain levels of datacenter management tasks to the localadministrator through the LMC.

FIG. 1 shows a block diagram of an example data storage system,according to one embodiment. The data storage system 100 includes a host110 and a chassis 160 (herein also referred to as an eSSD chassis)containing one or more NVMe-oF-compatible Ethernet SSDs (eSSDs). Forexample, the chassis 160 includes 24 or 48 eSSDs. The eSSDs in thechassis 160 are respectively denoted as eSSDs 170 a-170 n (hereincollectively referred to as eSSDs 170). The host 110 includes anapplication 111, an operating system (OS) and a file system (FS) 112,and an NVMe-oF driver 113. An initiator (e.g., the application 111) ofthe host 110 can establish an NVMe-oF connection with the eSSDs 170 overthe Ethernet 150 using the NVMe-oF driver 113. The chassis 160 includesan Ethernet switch 161, a baseboard management controller (BMC) 162, anda peripheral component interconnect express (PCIe) switch 163. TheEthernet switch 161 provides an Ethernet connection to the eSSDs 170over the midplane 165, and the PCIe switch 163 provides a managementinterface 164 to the eSSDs 170 over the midplane 165. The BMC 162 canprogram the eSSDs 170 according to an instruction given by a systemadministrator.

The Ethernet switch 161 provides network connectivity between the host110 and the eSSDs 170. The Ethernet switch 161 may have large-capacity(e.g., 100 Gbps) uplinks to connect to one or more hosts. The Ethernetswitch 161 also has multiple lower-capacity (e.g., 25 Gbps) downlinks toconnect to the eSSDs 170. For example, the Ethernet switch 161 contains12 uplinks of 100 Gbps and 24 or 48 downlinks of 25 Gbps. The Ethernetswitch 161 may have a special configuration/management port to the BMC162.

The BMC 162 manages the internal components of the chassis 160 includingthe Ethernet switch 161, the PCIe switch 163, and the eSSDs 170. The BMC162 can support PCIe and/or system management bus (SMBus) interfaces forthe system management. The BMC 162 can configure the eSSDs 170 andprogram the Ethernet switch 161.

Similar to server based all-flash arrays (AFAs), eSSDs 170 are housedtogether in a server-less enclosure (i.e., the chassis 160) thatcontains a bunch of eSSDs, a network switch (i.e., the Ethernet switch161) to connect them with the outside world's hosts and the BMC 162 tomanage them. The BMC 162 handles the boot and control paths to the eSSDdevices. Unlike a full-fledged x86 CPU, the BMC 162 may not do all thosetasks that a CPU can handle and hence does the minimal enclosuremanagement functions. The BMC 162 does keep a health check on theconnected eSSDs 170 and related hardware for connectivity, status,temperature, logs, and errors through the SMBus.

FIG. 2 shows a block diagram of an example data storage system,according to another embodiment. The data storage system 200 includes ahost 210 and a plurality of eSSD chassis 260 a-260 m (collectivelyreferred to as eSSD chassis 260) that are connected to the host 210 overthe Ethernet 250. The host 210 includes an application 211, an operatingsystem (OS) and a file system (FS) 212, and an NVMe-oF driver 213 forconnecting with each of the eSSD chassis 260 in a rack 275 over theEthernet 150. The rack 275 includes a top-of-rack (TOR) switch 271 thatprovides connectivity among the multiple chassis 260 in the rack 275.Similarly, the NVMe-oF system 200 can include multiple racks 275 thatmay be located at different locations. The racks 275 can be connected toeach other through their TOR switches 271. The TOR switches 271 of themultiple racks 275 may be connected to each other directly via dedicatedlines or through external switches over the Ethernet 250.

The CPU-based host 210 runs the operating system and file system 212 toemploy host drivers and services to query, control, and apply theservices to the eSSDs in the eSSD chassis. The BMC of the eSSD chassis260 may not have a capability to run the operating system to provide aninterface to a local administrator to provide status and otherindicators of the eSSDs.

According to one embodiment, the BMC for each eSSD chassis can run aservice to provide a remote interface to a local administrator and asuper administrator who manage the operation of the datacenter. Theservice employed by the BMC can be built with minimal elements requiredto provide a control path to the eSSDs. The BMC may not include an x86CPU. Instead, the BMC may be an integrated chip including limited memoryand logic capable of running embedded applications and firmware code forproviding the remote service and other management functions of thechassis.

Although the present examples shown in FIGS. 1 and 2 describe anNVMe-based storage device (i.e., eSSD), but it is noted that theexamples described herein may be equally applicable to other types ofstorage devices. Unlike other types of drives such as Serial ATAttachment (SATA) drives and Serial Attached Small computer systeminterface (SAS) drives, the eSSD does not have a mechanism to provide avisual indication of the drive status as prescribed by the InternationalBlinking Pattern Interpretation (IBPI) through SFF-8489 specification.Instead, the BMC of the eSSD chassis may provide an interface that canadhere to the SFF-8489 specification. The service employed by the BMCcan provide status information using visual indicators on SSD location,failure, rebuild, type, failure modes, and vendor specific usages. TheeSSD chassis does not include a CPU (e.g., x86 CPU) and can connected toa local management console (LMC) wiredly or wirelessly. The LMC canprovide a graphical user interface to the local administrator. Detaileddescription of the LMC will be provided below with reference to FIGS. 3,4A-4D, and 5A-5D.

The present system and method provides an NVMe-oF system including anLMC that provides local management for disaggregated NVMe-oF EthernetSSD chassis (eSSD chassis or chassis in short) and the eSSDs includedtherein for local management in conjunction with a remote administrator.The eSSD chassis eSSD chassis provides a large number SSDs to beconnected to remote initiators (e.g., the application 211 of FIG. 2).

The present system and method provides an LMC to configure eSSDs and thechassis for connectivity setup, data protection/reduction and otherfeatures, and deployment and removal/replacement of the eSSDs. The LMCcan display information at various levels including eSSD, chassis, rack,and datacenter to show serviceability messages, status, performance,etc. Legacy CPU-based servers having a CPU can run an operating systemto interact with the datacenter administrator. The present data storagesystem does not need such CPU-based servers. The LMC can connect withthe BMC for each chassis to display data to a local administrator. TheLMC can work with a remote administrator to display service messages forthe local administrator. The LMC can have a small screen or a granderdisplay depending on a usage and application. The LMC can be connectedto the BMC directly or wirelessly. The LMC can digest the BMC-provideddata per each chassis to collect and provide chassis-level, rack level,or datacenter-level information.

The present system and method supports a remote direct attached storage(rDAS) model with better latency and IOPs performance. The BMC includedin each chassis acts an agent through which the remote administrator canconfigure and manage the eSSDs in the chassis. The BMC can use theNVMe-MI protocol over the PCIe or SMBus interface to configure, monitor,and manage the eSSDs. The remote administrator may use SwordFish/RedFishor other proprietary communication protocols to communicate with theBMC.

Since the remote administrator is remotely connected, there is a needfor local management for the eSSD chassis and other assets available ina storage rack. The LMC provides a mechanism to provide support for thelocal administrator who may be physically present in the same datacenterin which the storage devices (e.g., eSSDs) physically reside and aremanaged. A conventional model that allows communication between the BMCto the remote administrator can be expanded to support the communicationbetween the BMC and the local administrator. The local communicationbetween the BMC and the LMC facilitates status updates of the eSSDs tothe local administrator. This can also facilitate changes to the eSSDsby the local administrator overriding previously set configurations. Thepresent system and method enables facilitated communication between theBMC and the local administrator using various types of local managementconsoles, and capability to configure and change attributes andparameters of the eSSDs that are exposed to the local administrator.

The LMC provides a mechanism that can be used by the local administratorto monitor, configure, and manage a NVMe-oF Ethernet SSD chassis and arack including multiple chassis. In the rDAS model, there can besituations where it may be desirable to have a visibility of a localadministrator into the status of the eSSDs. In these situations, itwould be desirable to provide configuration capability to the localadministrator.

The NVMe-oF Ethernet SSDs, eSSDs in short, provides high performancedisaggregated storage of data. The NVMe-oF standard is an emergingtechnology that allows hundreds and thousands of SSDs to be connected tothe remote initiators. Such disaggregated storage needs local storagemonitoring and configuration capabilities in addition to traditionaladministrative functions. The LMC that works with the BMC in the chassiscan assist the local administrator. The LMC has a communication link toa BMC, a display unit, and a user input device such as touch screen orkey pad.

The local administrator can view various vital stats, current healthstatus, logs, and performance levels of the eSSDs. The localadministrator is also capable to effect changes to the configuration ofeach eSSD through the BMC. An LMC may be able to communicate with otherLMCs to form a hierarchy of LMCs or a form a central LMC system for thewhole datacenter.

FIG. 3 shows a block diagram of an example data storage system in adatacenter including a local management console, according to oneembodiment. A rack 375 can include one or more chassis 360. Each chassis360 includes an Ethernet switch 361, a BMC 362, a PCIe switch 363, and aplurality of eSSDs 370 a-370 n. The Ethernet switch 361 in each chassis360 connects to an application 311 running on a host computer over theEthernet 350. The present example shows Ethernet 350 and eSSDs 370;however, it is understood that different type of fabric network otherthan the Ethernet 350, such as Fibre Channel and Infiniband, anddifferent types of data storage devices other than the eSSDs 370 may beused without deviating from the scope of the present disclosure.

A remote administrator 364 can manage the operation of each chassis 360via the Ethernet 350. The chassis 360 may not have a display port forconnecting to a display device. Instead, the chassis 360 can connect toa local management console (LMC) 380 wiredly or wirelessly. The LMC 380can provide a communication interface to connect to the chassis 360 anda display for displaying a status of the eSSDs 370 included in thechassis 360. For example, the display of the LMC 380 can display dataspecific to the chassis 360 and/or eSSDs 370 such as connectivity,input/output (I/O) activity with access requests information such as asize, bytes, I/O counts, distribution, temperature, and detailedinformation regarding the storage drive and network interface. Accordingto one embodiment, the LMC 380 provides general activities of the eSSDs370 in the form of a message, for example, an SFF-8489 type message.

According to one embodiment, the LMC 380 can provide an interface toassist an administrator (e.g., a local administrator 365 and a remoteadministrator 364) in upkeeping of the connected eSSDs 370. For example,the local administrator 365 can use the interface provided by the LMC380 to configure, control, debug, and display status of the connectedeSSDs 370. In one embodiment, the LMC 380 can provide visual indicatorsto the local administrator 365. The visual indicators may include data,messages, graphics, signs, or the like. For example, the LMC 380 maydisplay a service light to identify a chassis and a rack or otherlocality-based indicators including, but not limited to, a voice call ora text message.

The LMC 380 may be connected to the chassis 360 in various ways. The BMC362 of the chassis 360 can drive the connection to the LMC 380 through adirectly wired connection such as SMbus, PCIe, and Ethernet or awireless connection such as wireless local area network (WLAN), Wi-Fi,Bluetooth, Bluetooth Low Energy (BLE) to provide single and statusinformation of the eSSDs 370 within the chassis 360. The LMC 380 can beconnected to all chassis within a rack to show a broader rack-levelview. The LMC 380 can also be connected to multiple racks within aregion of a datacenter or the entire datacenter for a globaldatacenter-level view.

The LMC 380 may have intelligence to interpret and process the datareceived from the BMC 362 of the chassis 360. The BMC 362 can merelycollect data collected from the eSSDs 370 and send the unprocessed datato the LMC 380.

The communication between the BMC 362 and the LMC 380 is established tobe reliable and secure. In one embodiment, the BMC 362 communicates withthe eSSDs 370 using the NVMe-MI protocol. The same NVMe-MI protocol canbe used for communication between the BMC 362 and the LMC 380. Each LMC380 can identify itself as a unique device through Identify, VitalProduct Data (VPD), and Management data structures as supported in theNVMe-MI protocol to the BMC 362. The VPD utilizes a format defined inthe IPMI Platform Management FRU Information Storage Definition. The LMC380 can advertise its characteristics, features, capabilities, andrequirements through the Identify, VPD, and Management data structures.The BMC 362 can periodically poll the LMC 380 to check if the LMC 380needs to perform any data transfer between the LMC 380 to the BMC 362.

Examples of the data transferred from the LMC 380 to the BMC 362include, but are not limited to, configuration commands that the LMC 380performs on the eSSDs 370 or other components in the chassis 360.Examples of the configuration commands that the LMC 380 may set orchange through the BMC 362 include, but are not limited to,configuration of a new eSSD or removal of an existing eSSD, updates toexisting features for an eSSD, accessibility to an eSSD such as an IPaddress, an Ethernet address, and switch configuration. The LMC 380 mayalso instruct the BMC 362 to monitor certain parameters suchperformance, capacity, or remaining life for certain eSSDs 370. The LMC380 may provide specific details to the BMC 362 regarding the signalsand parameters to monitor, the monitoring frequency, etc.

Examples of the data transferred from the BMC 362 to the LMC 380include, but are not limited to, various statistical data, statusinformation, logs, or performance data, and the LMC 380 can display thedata, generate an email and a text message, or deliver the informationto the local administrator 365. The BMC 362 may push such dataperiodically, or the LMC 380 may pull the data when desired, forexample, when the local administrator 365 clicks a button displayed onthe LMC 380.

Below is an example pseudo code implemented in a logic of the BMC 362,according to one embodiment. The logic of the BMC 362 includes a dataloop through eSSDs in parallel, a data push routine to the LMC 380, anda connection verification routine.

Data_loop:  for eSSD in num(slots):   ‘loop through all eSSDs inparallel’   if monitor(link_state):   get(link_status)   push(to_LMC)  if expired(health_time_filter):   get(SMART_log)   push(to_LMC)   ifexpired(perf_data_filter):   get(link_counters)   push(to_LMC)  to_LMC: if count(data_lines) >= collate_threshold   if connected(LMC)  push(LMC, data_lines)  Verify_connect:  if Identity(VPD_packet) inlist(eeprom.LMC):   accept(connect)

The communication channel established between the BMC 362 and the LMC380 and between an LMC 380 and another LMC 380 is a secure channel. Toestablish the secure communication channel, the BMC 362 may perform anauthentication check, and once the secure communication channel isestablished, the BMC 362 communicates with the LMC 380 for the actualdata transfer. The remote administrator 364 may setup permissions andrestrictions on the functionalities that are allowed or offloaded to aspecific LMC 380. Such synchronization between the remote administrator364 and the local administrator 365 is critical for the integrity of thestorage management. A well-defined and agreed upon set of managementpolicies that the local administrator 365 follows are essential foreffective and reliable management of the data storage devices in thedatacenter.

According to one embodiment, various parameters of the eSSDs 370 and thechassis 360 including the eSSDs 370 are monitored for local storagemanagement. The LMC 380 can render the monitored status and otherstatistical data for the use by the local administrator 365. The LMC 380may send an email or a text message, or provide a snapshot of thecollected data to the local administrator 365. Examples of theparameters displayed by the LMC 380 include, but are not limited to, SSDhealth status, remaining life, alerts, I/O performance, networkstatistics, logs, vendor-defined parameters. The BMC 362 may process theraw data to generate data regarding the performance data of the eSSDs370. The LMC 380 may only render or forward the data or the LMC 380 mayfurther process the data that the BMC 362 provided.

According to one embodiment, the present data storage system includingone or more LMCs can monitor and display parameters of the data storagedevices (e.g., eSSDs) on a desirable granularity. Examples of thegranularity are: per eSSD, per chassis, per rack, set of eSSDs acrosschassis or racks, set of chassis, the whole data center.

According to one embodiment, an LMC 380 can report to another LMC suchas a central LMC 385 to broaden the scope of the storage monitoringcapability. The LMC 380 and the central LMC 385 may have a differentlevel of permissions and restrictions on functionalities to manage thechassis 360 and the eSSDs 370. Such hierarchy of the LMCs can provide acentralized local storage management scheme by providing adatacenter-level view. The local administrator 365 can zoom in to afiner granularity to see a view-per-rack or view-per-chassis as desired.Although the present example describes a single BMC-to-LMCcommunication, it is possible that multiple BMCs can communicate to asingle LMC over a wireless communication channel.

FIGS. 4A through 4D show example display images of an LMC, according toone embodiment. FIG. 4A shows graphs of the eSSD status detailsincluding uplink and downlink I/O speeds of a specific eSSD and theEthernet switch. FIG. 4B shows status (on/off) of the eSSDs included ina specific chassis. FIG. 4C shows status of the chassis included in aspecific rack. FIG. 4D shows plots and graphs indicating efficiency andperformance forecast at a datacenter level. It is noted that FIGS. 4Athrough 4D are examples only, and it is understood that many differentpossibilities may be feasible without deviating from scope or spirit ofthe present disclosure. The LMC can take a shape of a various formfactors. Based on the intended usage, the LMC can be physically attachedto the chassis or a rack, or the LMC may be a mobile table that thelocal administrator can carry in the datacenter.

FIGS. 5A through 5D show exemplary configurations of the LMC, accordingto various embodiments. FIG. 5A shows a type of LMC that can be on aside of the chassis. FIG. 5B shows a type of LMC that can slide on thetop of the chassis. FIG. 5C shows a type of LMC that can be insertedinto a FRU-U.2 slot. FIG. 5D shows a wireless tablet that can connect toa chassis.

According to one embodiment, a local management console includes: acommunication interface to connect to a baseboard management controller(BMC) of a chassis in a data storage rack; and a display that displaysinformation associated with one or more data storage devices in thechassis. The information includes at least one of configuration,control, debugging, or status data associated with at least one of theone or more storage devices. The local management console connects tothe BMC through the communication interface, and responsive to receivinga first interaction associated with the display, performs at least oneof a configuration, control, debugging, or status acquisition operationon at least one of the one or more data storage devices.

The data storage devices may be nonvolatile memory express (NVMe) overfabrics (NVMe-oF) devices.

The communication interface may be a wired communication interfaceselected from system management bus (SMbus), a peripheral componentinterconnect express (PCIe), and Ethernet.

The communication interface may be a wireless communication interfaceselected from wireless local area network (WLAN), Wi-Fi, Bluetooth,Bluetooth Low Energy (BLE).

The display may show data, a message, a graph, a service lightindicating a status of the data storage devices to a localadministrator.

A remote administrator may connect to the local administrator and set uppermissions and restrictions on functionalities to the local managementconsole.

Data that the local management console sends to the BMC may includeconfiguration commands of the data storage devices.

The configuration commands may include commands for configuring a newdata storage device or removal of an existing data storage device, andupdating existing features for the data storage devices.

The configuration commands may be commands to configure accessibility tothe data storage devices including an IP address, an Ethernet address,and switch configuration of the chassis.

The local management console may send an instruction to the BMC tomonitor performance, capacity, or remaining life for the data storagedevices.

Data that the BMC sends to the LMC may include statistical data, status,logs, input/output (I/O) performance, health status, remaining life,alerts, network statistics, vendor-defined parameters of the datastorage devices and the chassis.

The display may show data of a desirable granularity including data perdata storage device, data per chassis, data per rack, data for a set ofdata storage devices across the chassis or the data storage rack, datafor a set of chassis, and data for an entire datacenter.

According to another embodiment, a data storage system includes: a hostcomputer including an application; a data storage rack including one ormore chassis, wherein each chassis includes an Ethernet switch, abaseboard management controller (BMC), and one or more data storagedevices; and one or more local management consoles. each of the localmanagement consoles includes: a communication interface to connect to abaseboard management controller (BMC) of a chassis in a data storagerack; and a display that displays information associated with one ormore data storage devices included in the chassis, the informationcomprising at least one of configuration, control, debugging, or statusdata associated with at least one of the one or more storage devices.Each of the local management consoles connects to the BMC of eachchassis through the communication interface, and responsive to receivinga first interaction associated with the display, performs at least oneof a configuration, control, debugging, or status acquisition operationon at least one of the one or more data storage devices.

The application running on the host computer may access data storage inthe data storage devices via Ethernet, and the data storage devices arenonvolatile memory express (NVMe) over fabrics (NVMe-oF) devices.

The display of each of the display management consoles may show data, amessage, a graph, a service light indicating a status of the datastorage devices to a local administrator.

A remote administrator may connect to the local administrator and set uppermissions and restrictions on functionalities to the local managementconsole.

Data that each of the local management consoles sends to the BMC mayinclude configuration commands of the data storage devices.

The configuration commands may include commands for configuring a newdata storage device or removal of an existing data storage device, andupdating existing features for the data storage devices.

The configuration commands may be commands to configure accessibility tothe data storage devices including an IP address, an Ethernet address,and switch configuration of the chassis.

The one or more local management consoles may connect to a central localmanagement console, and wherein the one or more local managementconsoles and the central local management console may have a differentlevel of permissions and restrictions on functionalities to manage thechassis and the data storage devices.

The above example embodiments have been described hereinabove toillustrate various embodiments of implementing a system and method forproviding a local management console for managing data storage devices.Various modifications and departures from the disclosed exampleembodiments will occur to those having ordinary skill in the art. Thesubject matter that is intended to be within the scope of the inventionis set forth in the following claims.

What is claimed is:
 1. A local management console comprising: acommunication interface to connect to a baseboard management controller(BMC) of a chassis in a data storage rack; and a display that displaysinformation associated with one or more data storage devices in thechassis, the information comprising at least one of configuration,control, debugging, or status data associated with at least one of theone or more storage devices; wherein the local management consoleconnects to the BMC through the communication interface, and responsiveto receiving a first interaction associated with the display, performsat least one of a configuration, control, debugging, or statusacquisition operation on at least one of the one or more data storagedevices.
 2. The local management console of claim 1, wherein the datastorage devices are nonvolatile memory express (NVMe) over fabrics(NVMe-oF) devices.
 3. The local management console of claim 1, whereinthe communication interface is a wired communication interface selectedfrom system management bus (SMbus), a peripheral component interconnectexpress (PCIe), and Ethernet.
 4. The local management console of claim1, wherein the communication interface is a wireless communicationinterface selected from wireless local area network (WLAN), Wi-Fi,Bluetooth, Bluetooth Low Energy (BLE).
 5. The local management consoleof claim 1, wherein the display shows data, a message, a graph, aservice light indicating a status of the data storage devices to a localadministrator.
 6. The local management console of claim 5, wherein aremote administrator connects to the local administrator and sets uppermissions and restrictions on functionalities to the local managementconsole.
 7. The local management console of claim 1, wherein data thatthe local management console sends to the BMC include configurationcommands of the data storage devices.
 8. The local management console ofclaim 7, wherein the configuration commands include commands forconfiguring a new data storage device or removal of an existing datastorage device, and updating existing features for the data storagedevices.
 9. The local management console of claim 7, wherein theconfiguration commands are commands to configure accessibility to thedata storage devices including an IP address, an Ethernet address, andswitch configuration of the chassis.
 10. The local management console ofclaim 1, wherein the local management console sends an instruction tothe BMC to monitor performance, capacity, or remaining life for the datastorage devices.
 11. The local management console of claim 1, whereindata that the BMC sends to the LMC include statistical data, status,logs, input/output (I/O) performance, health status, remaining life,alerts, network statistics, vendor-defined parameters of the datastorage devices and the chassis.
 12. The local management console ofclaim 1, the display shows data of a desirable granularity includingdata per data storage device, data per chassis, data per rack, data fora set of data storage devices across the chassis or the data storagerack, data for a set of chassis, and data for an entire datacenter. 13.A data storage system comprising: a host computer including anapplication; a data storage rack including one or more chassis, whereineach chassis includes an Ethernet switch, a baseboard managementcontroller (BMC), and one or more data storage devices; and one or morelocal management consoles, wherein each of the local management consolesincludes: a communication interface to connect to a baseboard managementcontroller (BMC) of a chassis in a data storage rack; and a display thatdisplays information associated with one or more data storage devicesincluded in the chassis, the information comprising at least one ofconfiguration, control, debugging, or status data associated with atleast one of the one or more storage devices, wherein each of the localmanagement consoles connects to the BMC of each chassis through thecommunication interface, and responsive to receiving a first interactionassociated with the display, performs at least one of a configuration,control, debugging, or status acquisition operation on at least one ofthe one or more data storage devices.
 14. The data storage system claim13, wherein the application running on the host computer accesses datastorage in the data storage devices via Ethernet, and the data storagedevices are nonvolatile memory express (NVMe) over fabrics (NVMe-oF)devices.
 15. The data storage system claim 13, wherein the display ofeach of the display management consoles shows data, a message, a graph,a service light indicating a status of the data storage devices to alocal administrator.
 16. The data storage system claim 13, wherein aremote administrator connects to the local administrator and sets uppermissions and restrictions on functionalities to the local managementconsole.
 17. The data storage system claim 13, wherein data that each ofthe local management consoles sends to the BMC include configurationcommands of the data storage devices.
 18. The data storage system claim17, wherein the configuration commands include commands for configuringa new data storage device or removal of an existing data storage device,and updating existing features for the data storage devices.
 19. Thedata storage system claim 17, wherein the configuration commands arecommands to configure accessibility to the data storage devicesincluding an IP address, an Ethernet address, and switch configurationof the chassis.
 20. The data storage system claim 13, wherein the one ormore local management consoles connect to a central local managementconsole, and wherein the one or more local management consoles and thecentral local management console have a different level of permissionsand restrictions on functionalities to manage the chassis and the datastorage devices.